home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 5 / Apprentice-Release5.iso / Source Code / C / Applications / Fixation 1.3 / def.h < prev    next >
Text File  |  1995-10-28  |  2KB  |  79 lines

  1. /*----------------------------------------------------------------------------
  2.  
  3.     def.h
  4.  
  5.     This file contains reusable constant and type definitions.
  6.     
  7.     Copyright © 1994-1995, Northwestern University.
  8.  
  9. ----------------------------------------------------------------------------*/
  10.  
  11. #ifndef __DEF__
  12. #define __DEF__
  13.  
  14.  
  15. /* Macros */
  16.  
  17. #define isLWSP(a) ((a) == ' ' || (a) == '\t')
  18. #define isLWSPorCR(a) (isLWSP(a) || (a) == CR)
  19. #define isPrintable(a) ((a) >= ' ' && (a) != 0x7f)
  20. #define isoctal(a) ((a) >= '0' && (a) <= '7')
  21. #define isCRorLF(a) ((a) == CR || (a) == LF)
  22.  
  23.  
  24.  
  25. /* Constants. */
  26.  
  27. #define kFTPPort    21
  28. #define kSMTPPort    25
  29. #define kNNTPPort    119
  30.  
  31. #define CR            '\r'
  32. #define LF            '\n'
  33. #define BS            0x08
  34. #define FF            0x0C
  35. #define    CRSTR        "\r"
  36. #define    LFSTR        "\n"
  37. #define CRLF        "\r\n"
  38. #define CRCR         "\r\r"
  39.  
  40. #define homeKey                0x01        /* ascii code for home key */
  41. #define enterKey            0x03        /* ascii code for enter key */
  42. #define endKey                0x04        /* ascii code for end key */
  43. #define helpKey                0x05        /* ascii code for help key */
  44. #define deleteKey            0x08        /* ascii code for delete/backspace */
  45. #define tabKey                0x09        /* ascii code for tab key */
  46. #define pageUpKey            0x0B        /* ascii code for page up key */
  47. #define pageDownKey            0x0C        /* ascii code for page down key */
  48. #define returnKey            0x0D        /* ascii code for return key */
  49. #define leftArrow            0x1C        /* ascii code for left arrow key */
  50. #define rightArrow            0x1D        /* ascii code for right arrow key */
  51. #define upArrow                0x1E        /* ascii code for up arrow key */
  52. #define downArrow            0x1F        /* ascii code for down arrow key */
  53. #define forwardDelKey        0x7F        /* ascii code for forward delete key */
  54.  
  55. #define escapeKeyCode        0x35        /* key code for escape key */
  56. #define clearKeyCode        0x47        /* key code for clear key */
  57.  
  58. #define kScrollToHome        24            /* pseudo part code for scrolling to home */
  59. #define kScrollToEnd        25            /* pseudo part code for scrolling to end */
  60.  
  61.  
  62.  
  63. /* Types. */
  64.  
  65. typedef char CStr255[256];        /* like Str255, except for C-format strings. */
  66.  
  67.  
  68.  
  69. /* This is the private data for a popup menu control using CDEF 63.
  70.    It's documented in IM6:Compatibility, and in NIM:Toolbox Essentials. */
  71.    
  72. typedef struct {
  73.     MenuHandle mHandle;        /* Handle to menu */
  74.     short mID;                /* Menu ID */
  75.     char mPrivate;            /* Private data of varying length */
  76. } popupPrivateData;
  77.  
  78. #endif
  79.